.amplify-placeholder {
  animation-direction: alternate;
  animation-duration: var(--amplify-components-placeholder-transition-duration);
  animation-iteration-count: infinite;
  animation-name: amplify-placeholder-loading;
  border-radius: var(--amplify-components-placeholder-border-radius);
  height: var(--amplify-components-placeholder-default-height);
  width: 100%;
  display: block;

  &--small {
    height: var(--amplify-components-placeholder-small-height);
  }

  &--large {
    height: var(--amplify-components-placeholder-large-height);
  }
}

@keyframes amplify-placeholder-loading {
  0% {
    background-color: var(--amplify-components-placeholder-start-color);
  }
  100% {
    background-color: var(--amplify-components-placeholder-end-color);
  }
}

@media (prefers-reduced-motion: reduce) {
  .amplify-placeholder {
    animation: none;
    background-color: var(--amplify-components-placeholder-end-color);
  }
}
